using System;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("NormalButton")]
	public class NormalButton : PegUIElement
	{
		public GameObject m_button => method_3<GameObject>("m_button");

		public TextMesh m_buttonText => method_3<TextMesh>("m_buttonText");

		public UberText m_buttonUberText => method_3<UberText>("m_buttonUberText");

		public GameObject m_mouseOverBone => method_3<GameObject>("m_mouseOverBone");

		public float m_userOverYOffset => method_2<float>("m_userOverYOffset");

		public Vector3 m_originalButtonPosition => method_2<Vector3>("m_originalButtonPosition");

		public int buttonID => method_2<int>("buttonID");

		public NormalButton(IntPtr address, string className)
			: base(address, className)
		{
		}

		public NormalButton(IntPtr address)
			: this(address, "NormalButton")
		{
		}

		public new void Awake()
		{
			method_8("Awake");
		}

		public new void OnOver(InteractionState oldState)
		{
			method_8("OnOver", oldState);
		}

		public new void OnOut(InteractionState oldState)
		{
			method_8("OnOut", oldState);
		}

		public void SetUserOverYOffset(float userOverYOffset)
		{
			method_8("SetUserOverYOffset", userOverYOffset);
		}

		public void SetButtonID(int newID)
		{
			method_8("SetButtonID", newID);
		}

		public int GetButtonID()
		{
			return method_11<int>("GetButtonID", Array.Empty<object>());
		}

		public void SetText(string t)
		{
			method_8("SetText", t);
		}

		public float GetTextWidth()
		{
			return method_11<float>("GetTextWidth", Array.Empty<object>());
		}

		public float GetTextHeight()
		{
			return method_11<float>("GetTextHeight", Array.Empty<object>());
		}

		public float GetRight()
		{
			return method_11<float>("GetRight", Array.Empty<object>());
		}

		public float GetLeft()
		{
			return method_11<float>("GetLeft", Array.Empty<object>());
		}

		public float GetTop()
		{
			return method_11<float>("GetTop", Array.Empty<object>());
		}

		public float GetBottom()
		{
			return method_11<float>("GetBottom", Array.Empty<object>());
		}

		public void SetOriginalButtonPosition()
		{
			method_8("SetOriginalButtonPosition");
		}

		public GameObject GetButtonTextGO()
		{
			return method_14<GameObject>("GetButtonTextGO", Array.Empty<object>());
		}

		public UberText GetButtonUberText()
		{
			return method_14<UberText>("GetButtonUberText", Array.Empty<object>());
		}

		public string GetText()
		{
			return method_13("GetText");
		}
	}
}
